CCJ: object-based message passing and collective communication in Java

نویسندگان

  • Arnold Nelisse
  • Jason Maassen
  • Thilo Kielmann
  • Henri E. Bal
چکیده

CCJ is a communication library that adds MPI-like message passing and collective operations to Java. Rather than trying to adhere to the precise MPI syntax, CCJ aims at a clean integration of communication into Java’s object-oriented framework. For example, CCJ uses thread groups to support Java’s multithreading model and it allows any data structure (not just arrays) to be communicated. CCJ is implemented entirely in Java, on top of RMI, so it can be used with any Java virtual machine. The paper discusses three parallel Java applications that use collective communication. It compares the performance (on top of a Myrinet cluster) of CCJ, RMI and mpiJava versions of these applications, and also compares the code complexity of the CCJ and RMI versions. The results show that the CCJ versions are significantly simpler than the RMI versions and obtain a good performance. A detailed performance comparison between CCJ and mpiJava is given using the Java Grande Forum MPJ benchmark suite.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Performance Analysis of Java Message-Passing Libraries on Fast Ethernet, Myrinet and SCI Clusters

The use of Java for parallel programming on clusters according to the message-passing paradigm is an attractive choice. In this case, the overall application performance will largely depend on the performance of the underlying Java message-passing library. This paper evaluates, models and compares the performance of MPI-like point-to-point and collective communication primitives from selected J...

متن کامل

Generalizing Java RMI to Support Efficient Group Communication

This paper presents a generalization of the Java Remote Method Invocation model (RMI) providing an efficient group communication mechanism for parallel programming. In our Group Method Invocation model (GMI), methods can be invoked on a local object, on a remote object or on a group of objects (possibly with personalized parameters). Likewise, result values and exceptions can be returned normal...

متن کامل

Efficiency of Soap Versus JMS

Parallel application programmers and software engineers have a variety of paradigms at their disposal. Some of the tools include traditional environments such as Parallel Virtual Machine (PVM) and Message Passing Interface (MPI). Tools that are more modern involve the World Wide Web, including Simple Object Access Protocol (SOAP) [1], Java Messaging Service (JMS) [2], Common Object Request Brok...

متن کامل

JMPI: Implementing the Message Passing Standard in Java

The Message Passing Interface (MPI) standard provides a uniform Application Programmers Interface (API) that abstracts the underlying hardware from the parallel ap-s the underlying hardware from the parallel applications. Recent research efforts have extended the MPI standard to Java either through wrapper implementations or as subsets of larger parallel infrastructures. In this paper, we descr...

متن کامل

MPJ: A New Look at MPI for Java

The Message Passing Interface (MPI) was introduced in June 1994 as a standard message passing API for parallel scientific computing. The original MPI standard had language bindings for Fortran, C and C++. A new generation of distributed, Internet-enabled computing inspired the later introduction of similar message passing APIs for Java [1][2]. Current implementations of MPI for Java usually fol...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Concurrency and Computation: Practice and Experience

دوره 15  شماره 

صفحات  -

تاریخ انتشار 2003